package cn.topevery.garden.entity.dto;

import cn.topevery.garden.entity.po.GreFile;
import hw.topevery.framework.dto.PointDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;

/**
 * 房屋信息表 DTO
 *
 * @author code-generate
 * @date 2022-02-14
 */
@Data
@ApiModel(value = "HouseInfoDTO", description = "房屋信息表 DTO")
public class HouseInfoDTO implements Serializable{
    /**
     * 自增id
     */
    private Integer id;

        /** 房屋ID */
    @ApiModelProperty(value = "房屋ID")
    private String houseId;

    /** 房屋类型 */
    @ApiModelProperty(value = "房屋类型")
    private Integer houseType;

    /** 所属绿地id */
    @ApiModelProperty(value = "所属绿地id")
    private String landCode;

    /** 户主 */
    @ApiModelProperty(value = "户主")
    private String householder;

    /** 户主联系方式 */
    @ApiModelProperty(value = "户主联系方式")
    private String telephone;

    /** 建设开始时间 */
    @ApiModelProperty(value = "建设开始时间")
    private LocalDate startDate;

    /** 建设开始时间 */
    @ApiModelProperty(value = "建设开始时间")
    private LocalDate endDate;

    /** 面积 */
    @ApiModelProperty(value = "面积")
    private Double measure;

    /** 结构图 */
    @ApiModelProperty(value = "结构图")
    private String structureChart;

    /** 其他附件 */
    @ApiModelProperty(value = "其他附件")
    private String otherFile;

    /** 描述 */
    @ApiModelProperty(value = "描述")
    private String desc;

    /** 房屋性质 */
    @ApiModelProperty(value = "房屋性质")
    private String nature;

    /** 朝向 */
    @ApiModelProperty(value = "朝向")
    private String orientation;

    /** 高度 */
    @ApiModelProperty(value = "高度")
    private Double height;

    /** 是否归档 0 否 1 是  */
    @ApiModelProperty(value = "是否归档 0 否 1 是 ")
    private Integer recordStatus;

    /** 归档时间 */
    @ApiModelProperty(value = "归档时间")
    private LocalDate recordDate;

    @ApiModelProperty(value = "附件")
    private List<GreFile> fileList;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "经度")
    private Float lng;

    @ApiModelProperty(value = "纬度")
    private Float lat;

    public List<List<PointDto>> mapRangesPoints;

    private String geoWkt ;

//    @JSONField(serializeUsing = GeometrySerializer.class, deserializeUsing = GeometrySerializer.class)
//    public Geometry mapRanges ;
}
